Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

233
Visualizações
Laravel 5.8: $bal->balance se vuelve nulo

Quiero obtener un valor de la columna de balance de una tabla dinámica llamada user_wallet que dice así:

ingrese la descripción de la imagen aquí

Así que escribí esto en el Controlador:

 $bal = Wallet::with("users")->whereHas('users', function ($query) use ($wallet_id, $user_id) { $query->where('wallet_id', $wallet_id); $query->where('user_id', $user_id); })->first();

Pero cuando hago dd($bal->balance) , ¡obtengo null !

Entonces, ¿por qué es eso? ¿Cómo puedo obtener el valor del balance en función de user_id y wallet_id correctamente?

Aquí también están las relaciones entre el modelo User y el modelo de Wallet :

User.php

 public function wallets() { return $this->belongsToMany(Wallet::class, 'user_wallet', 'user_id', 'wallet_id')->withPivot('balance'); }

Wallet.php

 public function users() { return $this->belongsToMany(User::class, 'user_wallet', 'wallet_id', 'user_id'); }

Realmente agradecería cualquier idea o sugerencia de ustedes...

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Su consulta se supone que es como a continuación. Porque la relación que está haciendo es con la tabla de usuarios, no con user_wallet.

 $bal = Wallet::with("users") ->whereHas('users', function ($query) use ($user_id) { $query->where('id',$user_id); }) ->where('id', $wallet_id) ->first();

También puede hacer una consulta simple:

 $bal = DB::table('user_wallet') ->where('wallet_id', $wallet_id) ->where('user_id', $user_id) ->first(); if (!empty($bal)) { $balance = $bal->balance; }
over 4 years ago · Santiago Trujillo Relatório

0

Dado que es una relación de muchos a muchos, para obtener la tabla dinámica, haga un bucle como se muestra a continuación:

 @foreach($bal as $key => $value) {{$value->pivot->balance}} @endforeach

o si es un solo elemento, puede hacer lo siguiente:

 $user = $bal->users()->first(); $user->pivot->balance;

o

 $user = $bal->users->first(); $user->pivot->balance;

si todavía necesita directamente entonces, como lo sugiere @Dilip Hirapara answer .

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda